Storage controllers are dedicated devices that control the access to multiple storage units such as disks, tapes and the like. A storage controller can receive requests to retrieve information and in return provide information to one or more clients (such as computer) over a communication link. The communication link can belong to a storage area network (SAN). The storage controller can only receive Input/Output (IO) requests.
The throughput (also referred to as IO performance) of a storage controller is very important. The storage controller throughput is affected by various parameters including but not limited to a load imposed on the SAN. The power consumption of the storage controller and the time of executing IO-bounds tasks is also important.
There is a growing need to improve the performances of storage controllers.